iT邦幫忙

2023 iThome 鐵人賽

DAY 20
0
AI & Data

AI白話文運動系列之「A!給我那張Image!」系列 第 20

CNN經典論文導讀(四)--自編碼器(Autoencoder)前篇

  • 分享至 

  • xImage
  •  

前言

今天我們要來講一個新的東西:自編碼器,它用到的是「非監督式學習」的概念,這和之前我們討論的內容都不太一樣,所以內容上會分成兩天來介紹,讓大家更好的吸收!

先備知識

  1. 線性代數(至少知道甚麼是維度)

看完今天的內容你可能會知道......

  1. 監督式學習與非監督式學習是甚麼,有甚麼差異
  2. 非監督式學習有哪些應用
  3. 自編碼器是甚麼

一、監督式學習 vs. 非監督式學習

  • 先前我們討論到AI如何學習的時候有提到我們需要有「預期結果」給AI模型當作參考,告訴模型說你應該要輸出這樣的結果,這種使用到「資料(Data)」以及人類所提供的「標記(Label)」的學習方式被我們稱為「監督式學習(Supervised Learing)」。之前介紹過的任務類別與葛種的模型架構基本上都是屬於這種學習方式的,就好比我們最常處理的分類任務,也需要預先告訴模型每一張訓練圖片對應的類別是甚麼。
  • 與監督式學習相對應的,當然就是只有資料(Data)沒有(Label)的狀況,我們稱之為「非監督式學習(Unsupervised Learing)」,這類型的任務其實也很常見,只是比較偏向於工程領域,所以在日常生活中很難聯想到實際的例子。非監督式學習主要有:分群(Clustering)、關聯規則(Association Rule)與降維(Dimensionality Reduction)等。分群很好理解,就是很你一堆資料,讓你去分析要如何將這些資料分成一群一群的;關聯規則或關聯法則的概念也有點類似,需要我們找出所有資料彼此之間的關係,就好比在金融領域或社群領域中,我們可以從所有顧客的購買紀錄中找出顧客最容易一起購買的產品組合,這樣就可以針對這些產品推出適合的優惠以刺激買氣;降維的這個維度指的是資料或是提取出來的特徵的維度,目的在於將資料「去蕪存菁」保留最主要的資訊,捨棄其餘冗餘的資料,對於我們在處理處理石方常有幫助。
  • 今天我們要介紹的CNN模型架構就是一種非監督是學習的應用,它的目的在於找到最佳的降維方式,讓我們可以獲得足夠好又足夠精簡的特徵。至於要怎麼找呢?當然就是利用我們熟悉的CNN模型。

二、自編碼器(Autoencoder)

  • 自編碼器的這個「自(Auto)」來自於我們希望對於每一張圖片,模型都要自己學習自己,也就是輸入與預期輸出結果是同一張圖片。這樣做是為甚麼呢?我們利用下圖來回答這個問題,圖中描述的過程像不像資料的壓縮跟解壓縮,或是我們也可以用上面討論的內容來說,就是特徵/資料的降維與升維。如果這個過程做得非常完美的話,理論上,我可以將一張圖片壓縮成某一種特定維度的特徵,也可以將這樣的特徵還原成原本的圖片。
    https://ithelp.ithome.com.tw/upload/images/20231005/2016329964RKWTgrvc.png
  • 總結來說,原先的降維方法都是通過傳統演算法,利用很多數學概念配上一些魔法(目標資料的某種特性),歸納出一套規則,讓我們可以透過這樣的規則,保留最重要的資訊。我們很常聽到的82法則也可以用來解釋這樣的情況,80%的資訊會保存在20%的資料中,所以我們的目標就是要找到這80%的資訊。自編碼器提供了另外一種想法,我們不需要手動設計規則,只需要給模型足夠多的資料,以及設定好模型的架構,模型就會自動學習如何找到這80%的重要資訊,當然也可以是90%的資訊、95%的資訊,這取決於我們怎麼設計模型的。

三、總結

  • 今天主要介紹了監督式學習與非監督式學習這兩個重要的概念,並且延伸介紹自編碼器架構,明天我們會詳細介紹幾種常見的自編碼器架構與他們的應用,還請大家坐穩﹑繫好安全帶,讓我帶著大家一起前往新的領域!

上一篇
CNN經典論文實戰(三)--ResNet
下一篇
CNN經典論文導讀(四)--自編碼器(Autoencoder)後篇
系列文
AI白話文運動系列之「A!給我那張Image!」30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言